home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 045a / bpt5107.zip / BUGS.511 < prev    next >
Text File  |  1991-07-10  |  11KB  |  236 lines

  1. Below is a listing of the patched products.  In parenthesis () is the
  2. environment for which the patch was created.
  3.  
  4. The information contained in the square brackets [] is a cross reference
  5. to the patch information contained in the BUGS.510 file.
  6. (EG. XREF v5.10  PATCH #14 translates as PATCH #14 in the BUGS.510 file)
  7.  
  8.  
  9.       Bug descriptions for :  BTRIEVE v5.10 PRODUCTS FOR NETWARE 3.1
  10.  
  11.       BTRIEVE,
  12.       BROUTER (NLM),
  13.       BREQUEST (NLM)
  14.  
  15.   1. Btrieve (NLM)       [XREF v5.10  PATCH #14]
  16.  
  17.      An incompatibility with the rest of the Btrieve products:
  18.        The Get Position operation following a Delete operation returns
  19.        status 43 instead of status 8.
  20.  
  21.   2. Btrieve (NLM)       [XREF v5.10  PATCH #19]
  22.  
  23.      Without this patch various random error status can be returned when using
  24.      variable length pages or using truncation.
  25.  
  26.   3. Btrieve (NLM)       [XREF v5.10  PATCH #21]
  27.  
  28.      The Btrieve function to compare INTEGER keys will sometimes not
  29.      recognize a negative value, such as 8000h, as the lower value, treating
  30.      it as unsigned instead.
  31.      ( This patch was originally buggy and had to be corrected on 29Oct90. )
  32.  
  33.   4. Btrieve (NLM)       [XREF v5.10  PATCH #22]
  34.  
  35.      If 1. User1 and User2 have different files open ( A and B ) and
  36.         2. User3 also opens file A and
  37.         3. User4 also opens file B while
  38.         4. User2 is simultaneously CLOSING file B
  39.      a timing window may appear which causes a divide-by-0 GPI. This patch
  40.      corrects a semaphore to fix this.
  41.      ( This patch was modified on 29Oct90 to allow correction to #21, above. )
  42.  
  43.   5. Btrieve (NLM)       [XREF v5.10  PATCH #24]
  44.  
  45.      Get Key-only operations are erroneously not updating the position block.
  46.  
  47.   6. Btrieve (NLM)       [XREF v5.10  PATCH #26]
  48.  
  49.      If a Btrieve file has a ZSTRING or LSTRING key using alternate collating
  50.      sequence then a key value of length 0 for that key can result in some
  51.      undeterministic error due to an uninitialized variable.
  52.  
  53.   7. Btrieve (NLM) & BREQUEST   [XREF v5.10  PATCH #27]
  54.  
  55.      For data-only files, Btrieve was returning data to the key buffer
  56.      after Get Direct, Update, Insert and Extended Insert.
  57.      *** THE PATCH MUST BE MADE BOTH TO THE VAP (OR NLM) AND THE REQUESTER ***
  58.          THE VAP (OR NLM) SENDS A FLAG TO THE REQUESTER- IF YOU DON'T PATCH
  59.          THE REQUESTER THE FLAG WILL NOT BE UNDERSTOOD AND THE PROBLEM WILL
  60.          STILL BE PRESENT.
  61.  
  62.   8. Btrieve (NLM)       [XREF v5.10  PATCH #29]
  63.  
  64.       This fixes a bug where a file opened by Btrieve on the server could
  65.       not be opened for read-only by a non-Btrieve application, even though
  66.       the file had the Shareable attribute set by the Netware FLAG utility.
  67.  
  68.   9. Btrieve (NLM)       [XREF v5.10  PATCH #32]
  69.  
  70.      This fixes a bug in an undocumented Btrieve function call, used by
  71.      Netware SQL.  Only apply this patch after applying patch #27!
  72.  
  73.  10. Btrieve (NLM)       [XREF v5.10  PATCH #33]
  74.  
  75.      This fixes the following bug: after a Get Direct returns a status 22
  76.      (user's data buffer too small), the user's key buffer was being
  77.      overwritten with garbage.   It also fixes a bug in which the NLM
  78.      was not returning a key value after a Get Direct returns a status 22
  79.      when the user's data buffer WAS long enough to at least receive the
  80.      fixed length portion (including the keys) of the record.
  81.      *** THIS PATCH WILL ONLY WORK IF PATCH #27 HAS BEEN APPLIED TO THE ***
  82.          NLM AND BREQUEST.EXE !!!
  83.  
  84.  11. Btrieve (NLM)       [XREF v5.10  PATCH #37]
  85.  
  86.      Fixes a bug which caused Btrieve to return an incorrect status 2
  87.      when deleting a record from a file with a supplemental index.
  88.      This bug is most likely to occur only if few records have been inserted
  89.      since the creation of the supplemental index.  The bug only occurs
  90.      on the VAP or DOS if the supplemental index was created with the NLM.
  91.  
  92.  12. Btrieve (NLM)       [XREF v5.10  PATCH #47]
  93.  
  94.      When many workstations are constantly updating the same file, a timing
  95.      window can appear which results in cache corruption.  The effects can
  96.      range from file corruption to abends due to divide/by/zero or processor
  97.      exception interrupts.
  98.  
  99.  13. Btrieve (NLM)       [XREF v5.10  PATCH #48]
  100.  
  101.      When ending a transaction on multiple files of different page sizes, the
  102.      cache can become corrupted, causing the next reader of a file in the
  103.      cache to get errors #15 and/or #52.
  104.  
  105.  14. BROUTER (NLM)       [XREF v5.10  PATCH #49]
  106.  
  107.      This patch forces only one connection per server and serializes
  108.      client threads to avoid an as-yet-unexplained SPX hang.
  109.  
  110.  15. BROUTER (NLM)       [XREF v5.10  PATCH #50]
  111.  
  112.      This patch fixes the SPX hang mentioned above and may be used instead
  113.      of patch #14. (using both patches is equivalent to using just #14)  This
  114.      allows up to 3 BRouter-Btrieve connections to a given server and may
  115.      result in improved performance in some cases.
  116.  
  117.  16. Btrieve (NLM)       [XREF v5.10  PATCH #57]
  118.  
  119.      This bug caused a GET_NEXT to fail with a status 8 immediately after
  120.      an extended insert, but only if the insert followed an open call.
  121.  
  122.  17. Btrieve (NLM)       [XREF v5.10  PATCH #59]
  123.  
  124.      Multiple segmented null keys are not working; they either inserted into
  125.      the index (if duplicates are allowed) or the first occurrence is inserted
  126.      into the index and status 5 is returned for the rest of the time (if
  127.      duplicates are not allowed).
  128.  
  129.  18. Btrieve (NLM)       [XREF v5.10  PATCH #60]
  130.  
  131.      For a KEY-ONLY file which is small enough to fit on a single page, the
  132.      operations sequence OPEN-GET LAST(KEY)- GET PREVIOUS(KEY) [0-63-57] can
  133.      cause the server to hang in a loop.
  134.  
  135.  19. Btrieve (NLM)       [XREF v5.10  PATCH #61]
  136.  
  137.      An Extended Insert called with a data buffer of all 0's (no data) would
  138.      return a random, uninitialized error value instead of the correct #63.
  139.  
  140.  20. Btrieve (NLM)       [XREF v5.10  PATCH #63]
  141.  
  142.      Btrieve may return a status 9 (End of File) prematurely when Step Direct
  143.      is used to retrieve records from a file with greater than 65,535 pages
  144.      (i.e., at least 32 megabytes, depending on page size).
  145.  
  146.  21. Btrieve (NLM)       [XREF v5.10  PATCH #66]
  147.  
  148.      This fixes a bug in an undocumented Btrieve function call, used by
  149.      XQL and NetWare SQL.  The bug caused Netware SQL/XQL to return a
  150.      status 25 when logging in.
  151.  
  152.  22. BROUTER (NLM)       [XREF v5.10  PATCH #68]
  153.  
  154.      This fixes an interface problem between both BROUTERs and the Btrieve NLM
  155.      when doing an update operation on a key number other than 0.  In some
  156.      cases this could result in over-writing the front of the record.
  157.  
  158.  23. Brequest.exe        [XREF v5.10  PATCH #70]
  159.  
  160.      Brequest would not completely fill its data buffer, returning #97 for
  161.      a 4096-byte record, even with a /D=4096 parameter.  (but only if the
  162.      key was also maximum length)
  163.  
  164.  24. Btrieve (NLM)       [XREF v5.10  PATCH #71]
  165.  
  166.      When an application does a Step Next or Step Previous (or Extended
  167.      Step Next/Previous) after a Delete, Btrieve should return a status
  168.      8, Invalid Positioning.  Instead, this bug causes it to go into an
  169.      endless loop.  With the VAP & NLM, the workstation will appear to be
  170.      hung, too.  This patch fixes that bug.  (The bug only appears if the
  171.      record deleted has a physical position > 0xffff.)  Also fixed is a
  172.      related symptom of this bug: DOS, Windows and OS/2 Btrieve incorrectly
  173.      return a status 0 if you do a Get Position after a Delete.
  174.  
  175.  25. Btrieve (NLM)       [XREF v5.10  PATCH #72]
  176.  
  177.      If station #1 is doing GETEQUALs with a key and client #2 is doing
  178.      DELETES on the same file using a different key, the system can sometimes
  179.      get confused about which key was last used by #1, returning a status 7.
  180.  
  181.  26. Btrieve (NLM)       [XREF v5.10  PATCH #75]
  182.  
  183.      XQLP and SQL returned status 82 on a user-defined sort at the NLM due
  184.      to a bug in an undocumented Btrieve function.
  185.  
  186.  27. Btrieve (NLM)       [XREF v5.10  PATCH #80]
  187.  
  188.      In certain cases when an UPDATE fails for Duplicate Key (Error 5) the
  189.      update operation may not be undone properly.  This can result in
  190.      subsequent status 9s or 4s on a GET_EQUAL for a limited number of other
  191.      keys which may have been corrupted by this failure.  This bug corrects
  192.      the preimaging call to fix this.
  193.  
  194.  28. Btrieve ( NLM )     [XREF v5.10  PATCH #86]
  195.  
  196.       After an Update is done on a file with compressed records, positioning
  197.       is lost.  A Get Position will return a status 8; a Get Next will skip
  198.       to the next key value, ignoring the next duplicate, if any.  Similarly,
  199.       after an Insert is done on a file with compressed record, a
  200.       Get Previous will skip to the previous key value, instead of the
  201.       previous duplicate, if any.
  202.  
  203.  29. BTRIEVE ( NLM )     [XREF v5.10  PATCH #87]
  204.  
  205.       Sometimes a DELETE following a STEP_FIRST, then STEP_PREVIOUS
  206.       would return a conflict status 80 because the position was lost on the
  207.       failed STEP_PREVIOUS (error #9).  This fix restores the position.
  208.  
  209.  30. BTRIEVE (NLM)       [XREF v5.10  PATCH #88]
  210.  
  211.       A Conflict error (status 80) is returned when Updating or Deleting,
  212.       even though there is only one workstation accessing the file.  This
  213.       bug will only appear if the record being updated/deleted contains
  214.       a certain pattern of data: all bytes except the first four must be
  215.       binary zeroes, and some other, complicated conditions must be met.
  216.  
  217.  31. BTRIEVE (NLM)       [XREF v5.10  PATCH #89]
  218.  
  219.       When two clients are pointing at the same record in a file and one of
  220.       them does an update which changes its key,  the second client will get
  221.       an unpredictable, out of sequence record on his next GetNext.  This
  222.       patch makes his current record invalid but leaves the next and previous
  223.       pointers alone to maintain the relative position for that second user.
  224.  
  225.  
  226.  32. BTRIEVE (NLM)       [XREF v5.10  PATCH #94]
  227.  
  228.       Fixes a problem in patch 31 which causes the following problem: after
  229.       an Update which changes a record's key value, a subsequent
  230.       Get Previous skips any records whose key value is a duplicate of
  231.       the (new) key value of the record which was just changed.
  232.  
  233. *****  Last Update - 05/30/91  -  MJH *****
  234.  
  235.  
  236.